package com.tuanzi.loan.business.entity.settlement;

import java.io.Serializable;

import javax.persistence.*;

import com.tuanzi.loan.core.entity.AuditEntity;

import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * @author caiwanlin
 * @create 2018-01-09 17:12
 */
@Data
@Entity
@Table(name = "loan_company_info")
@EqualsAndHashCode(callSuper = true)
public class CompanyInfo extends AuditEntity implements Serializable {

	private static final long serialVersionUID = -5489375254737010367L;

	@Id
	@Column(name = "id")
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	private Long id;

	@Column(name = "company_name")
	private String companyName;

	@Column(name = "product_name")
	private String productName;

	@Column(name = "cop_mode")
	private Integer copMode;

	@Column(name = "tax_identification_number")
	private String taxIdentificationNumber;

	@Column(name = "company_background")
	private Integer companyBackground;

	@Column(name = "company_phone")
	private String companyPhone;

	@Column(name = "contact_name")
	private String contactName;

	@Column(name = "contact_phone")
	private String contactPhone;

	@Column(name = "contact_email")
	private String contactEmail;

	@Column(name = "first_party_email")
	private String firstPartyEmail;

	@Column(name = "first_party_address")
	private String firstPartyAddress;

	@Column(name = "if_general_taxpayer")
	private Boolean ifGeneralTaxpayer = false;

	@Column(name = "verify_mode")
	private Integer verifyMode;

	@Column(name = "settlement_price_cps")
	private Float settlementPriceCps;

	@Column(name = "settlement_price_cpa")
	private Float settlementPriceCpa;

	@Column(name = "settlement_peroid")
	private Integer settlementPeroid;

	@Column(name = "settlement_payment_peroid")
	private Integer settlementPaymentPeroid;

	@Column(name = "amount_advanced")
	private Float amountAdvanced;

	@Column(name = "receivable_account")
	private String receivableAccount;

	@Column(name = "receivable_card_number")
	private String receivableCardNumber;

	@Column(name = "if_invoice")
	private Boolean ifInvoice = false;

	@Column(name = "payer")
	private String payer;

	@Column(name = "invoice_content")
	private Integer invoiceContent;

	@Column(name = "first_party_bank")
	private String firstPartyBank;

	@Column(name = "first_party_account")
	private String firstPartyAccount;

	@Column(name = "first_party_card_number")
	private String firstPartyCardNumber;

	@Column(name = "invoice_address")
	private String invoiceAddress;

	@Column(name = "recipients_name")
	private String recipientsName;

	@Column(name = "recipients_mobile")
	private String recipientsMobile;

	@Column(name = "delivery_address")
	private String deliveryAddress;

	@Column(name = "principal")
	private String principal;

	@Column(name = "auditor")
	private String auditor;

	@Column(name = "audit_status")
	private Integer auditStatus;

}
